home *** CD-ROM | disk | FTP | other *** search
/ Inter.Net 55-1 / Inter.Net 55-1.iso / CBuilder / Setup / BCB / data.z / dsgnintf.hpp < prev    next >
Encoding:
C/C++ Source or Header  |  1998-02-09  |  27.9 KB  |  777 lines

  1. // Borland C++ Builder
  2. // Copyright (c) 1995, 1998 by Borland International
  3. // All rights reserved
  4.  
  5. // (DO NOT EDIT: machine generated header) 'DsgnIntf.pas' rev: 3.00
  6.  
  7. #ifndef DsgnIntfHPP
  8. #define DsgnIntfHPP
  9. #include <TypInfo.hpp>
  10. #include <Forms.hpp>
  11. #include <Controls.hpp>
  12. #include <Graphics.hpp>
  13. #include <Classes.hpp>
  14. #include <SysUtils.hpp>
  15. #include <SysInit.hpp>
  16. #include <System.hpp>
  17.  
  18. //-- user supplied -----------------------------------------------------------
  19.  
  20. namespace Dsgnintf
  21. {
  22. //-- type declarations -------------------------------------------------------
  23. class DELPHICLASS TComponentList;
  24. class PASCALIMPLEMENTATION TComponentList : public System::TObject 
  25. {
  26.     typedef System::TObject inherited;
  27.     
  28. private:
  29.     Classes::TList* FList;
  30.     Classes::TPersistent* __fastcall Get(int Index);
  31.     int __fastcall GetCount(void);
  32.     
  33. public:
  34.     __fastcall TComponentList(void);
  35.     __fastcall virtual ~TComponentList(void);
  36.     int __fastcall Add(Classes::TPersistent* Item);
  37.     bool __fastcall Equals(TComponentList* List);
  38.     __property int Count = {read=GetCount, nodefault};
  39.     __property Classes::TPersistent* Items[int Index] = {read=Get/*, default*/};
  40. };
  41.  
  42. class DELPHICLASS TFormDesigner;
  43. class PASCALIMPLEMENTATION TFormDesigner : public Forms::TDesigner 
  44. {
  45.     typedef Forms::TDesigner inherited;
  46.     
  47. public:
  48.     virtual Sysutils::TMethod __fastcall CreateMethod(const System::AnsiString Name, Typinfo::PTypeData 
  49.         TypeData) = 0;
  50.     virtual System::AnsiString __fastcall GetMethodName(const Sysutils::TMethod &Method) = 0;
  51.     virtual void __fastcall GetMethods(Typinfo::PTypeData TypeData, Classes::TGetStrProc Proc) = 0;
  52.     virtual System::AnsiString __fastcall GetPrivateDirectory(void) = 0;
  53.     virtual void __fastcall GetSelections(TComponentList* List) = 0;
  54.     virtual bool __fastcall MethodExists(const System::AnsiString Name) = 0;
  55.     virtual void __fastcall RenameMethod(const System::AnsiString CurName, const System::AnsiString NewName
  56.         ) = 0;
  57.     virtual void __fastcall SelectComponent(Classes::TPersistent* Instance) = 0;
  58.     virtual void __fastcall SetSelections(TComponentList* List) = 0;
  59.     virtual void __fastcall ShowMethod(const System::AnsiString Name) = 0;
  60.     virtual System::AnsiString __fastcall UniqueName(const System::AnsiString BaseName) = 0;
  61.     virtual void __fastcall GetComponentNames(Typinfo::PTypeData TypeData, Classes::TGetStrProc Proc) = 0
  62.         ;
  63.     virtual Classes::TComponent* __fastcall GetComponent(const System::AnsiString Name) = 0;
  64.     virtual System::AnsiString __fastcall GetComponentName(Classes::TComponent* Component) = 0;
  65.     virtual Classes::TPersistent* __fastcall GetObject(const System::AnsiString Name) = 0;
  66.     virtual System::AnsiString __fastcall GetObjectName(Classes::TPersistent* Instance) = 0;
  67.     virtual void __fastcall GetObjectNames(Typinfo::PTypeData TypeData, Classes::TGetStrProc Proc) = 0;
  68.         
  69.     virtual bool __fastcall MethodFromAncestor(const Sysutils::TMethod &Method) = 0;
  70.     virtual Classes::TComponent* __fastcall CreateComponent(System::TMetaClass* ComponentClass, Classes::TComponent* 
  71.         Parent, int Left, int Top, int Width, int Height) = 0;
  72.     virtual bool __fastcall IsComponentLinkable(Classes::TComponent* Component) = 0;
  73.     virtual void __fastcall MakeComponentLinkable(Classes::TComponent* Component) = 0;
  74.     virtual Classes::TComponent* __fastcall GetRoot(void) = 0;
  75.     virtual void __fastcall Revert(Classes::TPersistent* Instance, Typinfo::PPropInfo PropInfo) = 0;
  76.     virtual bool __fastcall GetIsDormant(void) = 0;
  77.     virtual bool __fastcall HasInterface(void) = 0;
  78.     virtual bool __fastcall HasInterfaceMember(const System::AnsiString Name) = 0;
  79.     virtual void __fastcall AddToInterface(int InvKind, const System::AnsiString Name, Word VT, const System::AnsiString 
  80.         TypeInfo) = 0;
  81.     virtual void __fastcall GetProjectModules(Classes::TGetModuleProc Proc) = 0;
  82.     __property bool IsDormant = {read=GetIsDormant, nodefault};
  83. public:
  84.     /* TObject.Create */ __fastcall TFormDesigner(void) : Forms::TDesigner() { }
  85.     /* TObject.Destroy */ __fastcall virtual ~TFormDesigner(void) { }
  86.     
  87. };
  88.  
  89. enum TPropertyAttribute { paValueList, paSubProperties, paDialog, paMultiSelect, paAutoUpdate, paSortList, 
  90.     paReadOnly, paRevertable };
  91.  
  92. typedef Set<TPropertyAttribute, paValueList, paRevertable>  TPropertyAttributes;
  93.  
  94. struct TInstProp
  95. {
  96.     Classes::TPersistent* Instance;
  97.     Typinfo::TPropInfo *PropInfo;
  98. } ;
  99.  
  100. typedef TInstProp TInstPropList[1024];
  101.  
  102. typedef TInstPropList *PInstPropList;
  103.  
  104. class DELPHICLASS TPropertyEditor;
  105. typedef void __fastcall (__closure *TGetPropEditProc)(TPropertyEditor* Prop);
  106.  
  107. class PASCALIMPLEMENTATION TPropertyEditor : public System::TObject 
  108. {
  109.     typedef System::TObject inherited;
  110.     
  111. private:
  112.     TFormDesigner* FDesigner;
  113.     TInstPropList *FPropList;
  114.     int FPropCount;
  115.     __fastcall TPropertyEditor(TFormDesigner* ADesigner, int APropCount);
  116.     System::AnsiString __fastcall GetPrivateDirectory(void);
  117.     void __fastcall SetPropEntry(int Index, Classes::TPersistent* AInstance, Typinfo::PPropInfo APropInfo
  118.         );
  119.     
  120. protected:
  121.     Typinfo::PPropInfo __fastcall GetPropInfo(void);
  122.     Extended __fastcall GetFloatValue(void);
  123.     Extended __fastcall GetFloatValueAt(int Index);
  124.     Sysutils::TMethod __fastcall GetMethodValue(void);
  125.     Sysutils::TMethod __fastcall GetMethodValueAt(int Index);
  126.     int __fastcall GetOrdValue(void);
  127.     int __fastcall GetOrdValueAt(int Index);
  128.     System::AnsiString __fastcall GetStrValue(void);
  129.     System::AnsiString __fastcall GetStrValueAt(int Index);
  130.     System::Variant __fastcall GetVarValue(void);
  131.     System::Variant __fastcall GetVarValueAt(int Index);
  132.     void __fastcall Modified(void);
  133.     void __fastcall SetFloatValue(Extended Value);
  134.     void __fastcall SetMethodValue(const Sysutils::TMethod &Value);
  135.     void __fastcall SetOrdValue(int Value);
  136.     void __fastcall SetStrValue(const System::AnsiString Value);
  137.     void __fastcall SetVarValue(const System::Variant &Value);
  138.     
  139. public:
  140.     __fastcall virtual ~TPropertyEditor(void);
  141.     virtual void __fastcall Activate(void);
  142.     virtual bool __fastcall AllEqual(void);
  143.     virtual void __fastcall Edit(void);
  144.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  145.     Classes::TPersistent* __fastcall GetComponent(int Index);
  146.     virtual int __fastcall GetEditLimit(void);
  147.     virtual System::AnsiString __fastcall GetName(void);
  148.     virtual void __fastcall GetProperties(TGetPropEditProc Proc);
  149.     Typinfo::PTypeInfo __fastcall GetPropType(void);
  150.     virtual System::AnsiString __fastcall GetValue(void);
  151.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  152.     virtual void __fastcall Initialize(void);
  153.     void __fastcall Revert(void);
  154.     virtual void __fastcall SetValue(const System::AnsiString Value);
  155.     bool __fastcall ValueAvailable(void);
  156.     __property TFormDesigner* Designer = {read=FDesigner};
  157.     __property System::AnsiString PrivateDirectory = {read=GetPrivateDirectory};
  158.     __property int PropCount = {read=FPropCount, nodefault};
  159.     __property System::AnsiString Value = {read=GetValue, write=SetValue};
  160. public:
  161.     /* TObject.Create */ __fastcall TPropertyEditor(void) : System::TObject() { }
  162.     
  163. };
  164.  
  165. typedef System::TMetaClass*TPropertyEditorClass;
  166.  
  167. class DELPHICLASS TOrdinalProperty;
  168. class PASCALIMPLEMENTATION TOrdinalProperty : public Dsgnintf::TPropertyEditor 
  169. {
  170.     typedef Dsgnintf::TPropertyEditor inherited;
  171.     
  172. public:
  173.     virtual bool __fastcall AllEqual(void);
  174.     virtual int __fastcall GetEditLimit(void);
  175. public:
  176.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TOrdinalProperty(void) { }
  177.     
  178. public:
  179.     /* TObject.Create */ __fastcall TOrdinalProperty(void) : Dsgnintf::TPropertyEditor() { }
  180.     
  181. };
  182.  
  183. class DELPHICLASS TIntegerProperty;
  184. class PASCALIMPLEMENTATION TIntegerProperty : public Dsgnintf::TOrdinalProperty 
  185. {
  186.     typedef Dsgnintf::TOrdinalProperty inherited;
  187.     
  188. public:
  189.     virtual System::AnsiString __fastcall GetValue(void);
  190.     virtual void __fastcall SetValue(const System::AnsiString Value);
  191. public:
  192.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TIntegerProperty(void) { }
  193.     
  194. public:
  195.     /* TObject.Create */ __fastcall TIntegerProperty(void) : Dsgnintf::TOrdinalProperty() { }
  196.     
  197. };
  198.  
  199. class DELPHICLASS TCharProperty;
  200. class PASCALIMPLEMENTATION TCharProperty : public Dsgnintf::TOrdinalProperty 
  201. {
  202.     typedef Dsgnintf::TOrdinalProperty inherited;
  203.     
  204. public:
  205.     virtual System::AnsiString __fastcall GetValue(void);
  206.     virtual void __fastcall SetValue(const System::AnsiString Value);
  207. public:
  208.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TCharProperty(void) { }
  209.     
  210. public:
  211.     /* TObject.Create */ __fastcall TCharProperty(void) : Dsgnintf::TOrdinalProperty() { }
  212.     
  213. };
  214.  
  215. class DELPHICLASS TEnumProperty;
  216. class PASCALIMPLEMENTATION TEnumProperty : public Dsgnintf::TOrdinalProperty 
  217. {
  218.     typedef Dsgnintf::TOrdinalProperty inherited;
  219.     
  220. public:
  221.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  222.     virtual System::AnsiString __fastcall GetValue(void);
  223.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  224.     virtual void __fastcall SetValue(const System::AnsiString Value);
  225. public:
  226.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TEnumProperty(void) { }
  227.     
  228. public:
  229.     /* TObject.Create */ __fastcall TEnumProperty(void) : Dsgnintf::TOrdinalProperty() { }
  230.     
  231. };
  232.  
  233. class DELPHICLASS TBoolProperty;
  234. class PASCALIMPLEMENTATION TBoolProperty : public Dsgnintf::TEnumProperty 
  235. {
  236.     typedef Dsgnintf::TEnumProperty inherited;
  237.     
  238. public:
  239.     virtual System::AnsiString __fastcall GetValue(void);
  240.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  241.     virtual void __fastcall SetValue(const System::AnsiString Value);
  242. public:
  243.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TBoolProperty(void) { }
  244.     
  245. public:
  246.     /* TObject.Create */ __fastcall TBoolProperty(void) : Dsgnintf::TEnumProperty() { }
  247.     
  248. };
  249.  
  250. class DELPHICLASS TFloatProperty;
  251. class PASCALIMPLEMENTATION TFloatProperty : public Dsgnintf::TPropertyEditor 
  252. {
  253.     typedef Dsgnintf::TPropertyEditor inherited;
  254.     
  255. public:
  256.     virtual bool __fastcall AllEqual(void);
  257.     virtual System::AnsiString __fastcall GetValue(void);
  258.     virtual void __fastcall SetValue(const System::AnsiString Value);
  259. public:
  260.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TFloatProperty(void) { }
  261.     
  262. public:
  263.     /* TObject.Create */ __fastcall TFloatProperty(void) : Dsgnintf::TPropertyEditor() { }
  264.     
  265. };
  266.  
  267. class DELPHICLASS TStringProperty;
  268. class PASCALIMPLEMENTATION TStringProperty : public Dsgnintf::TPropertyEditor 
  269. {
  270.     typedef Dsgnintf::TPropertyEditor inherited;
  271.     
  272. public:
  273.     virtual bool __fastcall AllEqual(void);
  274.     virtual int __fastcall GetEditLimit(void);
  275.     virtual System::AnsiString __fastcall GetValue(void);
  276.     virtual void __fastcall SetValue(const System::AnsiString Value);
  277. public:
  278.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TStringProperty(void) { }
  279.     
  280. public:
  281.     /* TObject.Create */ __fastcall TStringProperty(void) : Dsgnintf::TPropertyEditor() { }
  282.     
  283. };
  284.  
  285. class DELPHICLASS TSetElementProperty;
  286. class PASCALIMPLEMENTATION TSetElementProperty : public Dsgnintf::TPropertyEditor 
  287. {
  288.     typedef Dsgnintf::TPropertyEditor inherited;
  289.     
  290. private:
  291.     int FElement;
  292.     __fastcall TSetElementProperty(TFormDesigner* ADesigner, PInstPropList APropList, int APropCount, int 
  293.         AElement);
  294.     
  295. public:
  296.     __fastcall virtual ~TSetElementProperty(void);
  297.     virtual bool __fastcall AllEqual(void);
  298.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  299.     virtual System::AnsiString __fastcall GetName(void);
  300.     virtual System::AnsiString __fastcall GetValue(void);
  301.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  302.     virtual void __fastcall SetValue(const System::AnsiString Value);
  303. public:
  304.     /* TObject.Create */ __fastcall TSetElementProperty(void) : Dsgnintf::TPropertyEditor() { }
  305.     
  306. };
  307.  
  308. class DELPHICLASS TSetProperty;
  309. class PASCALIMPLEMENTATION TSetProperty : public Dsgnintf::TOrdinalProperty 
  310. {
  311.     typedef Dsgnintf::TOrdinalProperty inherited;
  312.     
  313. public:
  314.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  315.     virtual void __fastcall GetProperties(TGetPropEditProc Proc);
  316.     virtual System::AnsiString __fastcall GetValue(void);
  317. public:
  318.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TSetProperty(void) { }
  319.     
  320. public:
  321.     /* TObject.Create */ __fastcall TSetProperty(void) : Dsgnintf::TOrdinalProperty() { }
  322.     
  323. };
  324.  
  325. class DELPHICLASS TClassProperty;
  326. class PASCALIMPLEMENTATION TClassProperty : public Dsgnintf::TPropertyEditor 
  327. {
  328.     typedef Dsgnintf::TPropertyEditor inherited;
  329.     
  330. public:
  331.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  332.     virtual void __fastcall GetProperties(TGetPropEditProc Proc);
  333.     virtual System::AnsiString __fastcall GetValue(void);
  334. public:
  335.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TClassProperty(void) { }
  336.     
  337. public:
  338.     /* TObject.Create */ __fastcall TClassProperty(void) : Dsgnintf::TPropertyEditor() { }
  339.     
  340. };
  341.  
  342. class DELPHICLASS TMethodProperty;
  343. class PASCALIMPLEMENTATION TMethodProperty : public Dsgnintf::TPropertyEditor 
  344. {
  345.     typedef Dsgnintf::TPropertyEditor inherited;
  346.     
  347. public:
  348.     virtual bool __fastcall AllEqual(void);
  349.     virtual void __fastcall Edit(void);
  350.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  351.     virtual int __fastcall GetEditLimit(void);
  352.     virtual System::AnsiString __fastcall GetValue(void);
  353.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  354.     virtual void __fastcall SetValue(const System::AnsiString AValue);
  355.     virtual System::AnsiString __fastcall GetFormMethodName(void);
  356.     System::AnsiString __fastcall GetTrimmedEventName(void);
  357. public:
  358.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TMethodProperty(void) { }
  359.     
  360. public:
  361.     /* TObject.Create */ __fastcall TMethodProperty(void) : Dsgnintf::TPropertyEditor() { }
  362.     
  363. };
  364.  
  365. class DELPHICLASS TComponentProperty;
  366. class PASCALIMPLEMENTATION TComponentProperty : public Dsgnintf::TPropertyEditor 
  367. {
  368.     typedef Dsgnintf::TPropertyEditor inherited;
  369.     
  370. public:
  371.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  372.     virtual int __fastcall GetEditLimit(void);
  373.     virtual System::AnsiString __fastcall GetValue(void);
  374.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  375.     virtual void __fastcall SetValue(const System::AnsiString Value);
  376. public:
  377.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TComponentProperty(void) { }
  378.     
  379. public:
  380.     /* TObject.Create */ __fastcall TComponentProperty(void) : Dsgnintf::TPropertyEditor() { }
  381.     
  382. };
  383.  
  384. class DELPHICLASS TComponentNameProperty;
  385. class PASCALIMPLEMENTATION TComponentNameProperty : public Dsgnintf::TStringProperty 
  386. {
  387.     typedef Dsgnintf::TStringProperty inherited;
  388.     
  389. public:
  390.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  391.     virtual int __fastcall GetEditLimit(void);
  392. public:
  393.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TComponentNameProperty(void) { }
  394.     
  395. public:
  396.     /* TObject.Create */ __fastcall TComponentNameProperty(void) : Dsgnintf::TStringProperty() { }
  397.     
  398. };
  399.  
  400. class DELPHICLASS TFontNameProperty;
  401. class PASCALIMPLEMENTATION TFontNameProperty : public Dsgnintf::TStringProperty 
  402. {
  403.     typedef Dsgnintf::TStringProperty inherited;
  404.     
  405. public:
  406.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  407.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  408. public:
  409.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TFontNameProperty(void) { }
  410.     
  411. public:
  412.     /* TObject.Create */ __fastcall TFontNameProperty(void) : Dsgnintf::TStringProperty() { }
  413.     
  414. };
  415.  
  416. class DELPHICLASS TFontCharsetProperty;
  417. class PASCALIMPLEMENTATION TFontCharsetProperty : public Dsgnintf::TIntegerProperty 
  418. {
  419.     typedef Dsgnintf::TIntegerProperty inherited;
  420.     
  421. public:
  422.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  423.     virtual System::AnsiString __fastcall GetValue(void);
  424.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  425.     virtual void __fastcall SetValue(const System::AnsiString Value);
  426. public:
  427.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TFontCharsetProperty(void) { }
  428.     
  429. public:
  430.     /* TObject.Create */ __fastcall TFontCharsetProperty(void) : Dsgnintf::TIntegerProperty() { }
  431.     
  432. };
  433.  
  434. class DELPHICLASS TImeNameProperty;
  435. class PASCALIMPLEMENTATION TImeNameProperty : public Dsgnintf::TStringProperty 
  436. {
  437.     typedef Dsgnintf::TStringProperty inherited;
  438.     
  439. public:
  440.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  441.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  442. public:
  443.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TImeNameProperty(void) { }
  444.     
  445. public:
  446.     /* TObject.Create */ __fastcall TImeNameProperty(void) : Dsgnintf::TStringProperty() { }
  447.     
  448. };
  449.  
  450. class DELPHICLASS TColorProperty;
  451. class PASCALIMPLEMENTATION TColorProperty : public Dsgnintf::TIntegerProperty 
  452. {
  453.     typedef Dsgnintf::TIntegerProperty inherited;
  454.     
  455. public:
  456.     virtual void __fastcall Edit(void);
  457.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  458.     virtual System::AnsiString __fastcall GetValue(void);
  459.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  460.     virtual void __fastcall SetValue(const System::AnsiString Value);
  461. public:
  462.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TColorProperty(void) { }
  463.     
  464. public:
  465.     /* TObject.Create */ __fastcall TColorProperty(void) : Dsgnintf::TIntegerProperty() { }
  466.     
  467. };
  468.  
  469. class DELPHICLASS TCursorProperty;
  470. class PASCALIMPLEMENTATION TCursorProperty : public Dsgnintf::TIntegerProperty 
  471. {
  472.     typedef Dsgnintf::TIntegerProperty inherited;
  473.     
  474. public:
  475.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  476.     virtual System::AnsiString __fastcall GetValue(void);
  477.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  478.     virtual void __fastcall SetValue(const System::AnsiString Value);
  479. public:
  480.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TCursorProperty(void) { }
  481.     
  482. public:
  483.     /* TObject.Create */ __fastcall TCursorProperty(void) : Dsgnintf::TIntegerProperty() { }
  484.     
  485. };
  486.  
  487. class DELPHICLASS TFontProperty;
  488. class PASCALIMPLEMENTATION TFontProperty : public Dsgnintf::TClassProperty 
  489. {
  490.     typedef Dsgnintf::TClassProperty inherited;
  491.     
  492. public:
  493.     virtual void __fastcall Edit(void);
  494.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  495. public:
  496.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TFontProperty(void) { }
  497.     
  498. public:
  499.     /* TObject.Create */ __fastcall TFontProperty(void) : Dsgnintf::TClassProperty() { }
  500.     
  501. };
  502.  
  503. class DELPHICLASS TModalResultProperty;
  504. class PASCALIMPLEMENTATION TModalResultProperty : public Dsgnintf::TIntegerProperty 
  505. {
  506.     typedef Dsgnintf::TIntegerProperty inherited;
  507.     
  508. public:
  509.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  510.     virtual System::AnsiString __fastcall GetValue(void);
  511.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  512.     virtual void __fastcall SetValue(const System::AnsiString Value);
  513. public:
  514.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TModalResultProperty(void) { }
  515.     
  516. public:
  517.     /* TObject.Create */ __fastcall TModalResultProperty(void) : Dsgnintf::TIntegerProperty() { }
  518.     
  519. };
  520.  
  521. class DELPHICLASS TShortCutProperty;
  522. class PASCALIMPLEMENTATION TShortCutProperty : public Dsgnintf::TOrdinalProperty 
  523. {
  524.     typedef Dsgnintf::TOrdinalProperty inherited;
  525.     
  526. public:
  527.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  528.     virtual System::AnsiString __fastcall GetValue(void);
  529.     virtual void __fastcall GetValues(Classes::TGetStrProc Proc);
  530.     virtual void __fastcall SetValue(const System::AnsiString Value);
  531. public:
  532.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TShortCutProperty(void) { }
  533.     
  534. public:
  535.     /* TObject.Create */ __fastcall TShortCutProperty(void) : Dsgnintf::TOrdinalProperty() { }
  536.     
  537. };
  538.  
  539. class DELPHICLASS TMPFilenameProperty;
  540. class PASCALIMPLEMENTATION TMPFilenameProperty : public Dsgnintf::TStringProperty 
  541. {
  542.     typedef Dsgnintf::TStringProperty inherited;
  543.     
  544. public:
  545.     virtual void __fastcall Edit(void);
  546.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  547. public:
  548.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TMPFilenameProperty(void) { }
  549.     
  550. public:
  551.     /* TObject.Create */ __fastcall TMPFilenameProperty(void) : Dsgnintf::TStringProperty() { }
  552.     
  553. };
  554.  
  555. class DELPHICLASS TTabOrderProperty;
  556. class PASCALIMPLEMENTATION TTabOrderProperty : public Dsgnintf::TIntegerProperty 
  557. {
  558.     typedef Dsgnintf::TIntegerProperty inherited;
  559.     
  560. public:
  561.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  562. public:
  563.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TTabOrderProperty(void) { }
  564.     
  565. public:
  566.     /* TObject.Create */ __fastcall TTabOrderProperty(void) : Dsgnintf::TIntegerProperty() { }
  567.     
  568. };
  569.  
  570. class DELPHICLASS TCaptionProperty;
  571. class PASCALIMPLEMENTATION TCaptionProperty : public Dsgnintf::TStringProperty 
  572. {
  573.     typedef Dsgnintf::TStringProperty inherited;
  574.     
  575. public:
  576.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  577. public:
  578.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TCaptionProperty(void) { }
  579.     
  580. public:
  581.     /* TObject.Create */ __fastcall TCaptionProperty(void) : Dsgnintf::TStringProperty() { }
  582.     
  583. };
  584.  
  585. class DELPHICLASS TDateProperty;
  586. class PASCALIMPLEMENTATION TDateProperty : public Dsgnintf::TPropertyEditor 
  587. {
  588.     typedef Dsgnintf::TPropertyEditor inherited;
  589.     
  590. public:
  591.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  592.     virtual System::AnsiString __fastcall GetValue(void);
  593.     virtual void __fastcall SetValue(const System::AnsiString Value);
  594. public:
  595.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TDateProperty(void) { }
  596.     
  597. public:
  598.     /* TObject.Create */ __fastcall TDateProperty(void) : Dsgnintf::TPropertyEditor() { }
  599.     
  600. };
  601.  
  602. class DELPHICLASS TTimeProperty;
  603. class PASCALIMPLEMENTATION TTimeProperty : public Dsgnintf::TPropertyEditor 
  604. {
  605.     typedef Dsgnintf::TPropertyEditor inherited;
  606.     
  607. public:
  608.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  609.     virtual System::AnsiString __fastcall GetValue(void);
  610.     virtual void __fastcall SetValue(const System::AnsiString Value);
  611. public:
  612.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TTimeProperty(void) { }
  613.     
  614. public:
  615.     /* TObject.Create */ __fastcall TTimeProperty(void) : Dsgnintf::TPropertyEditor() { }
  616.     
  617. };
  618.  
  619. class DELPHICLASS TDateTimeProperty;
  620. class PASCALIMPLEMENTATION TDateTimeProperty : public Dsgnintf::TPropertyEditor 
  621. {
  622.     typedef Dsgnintf::TPropertyEditor inherited;
  623.     
  624. public:
  625.     virtual TPropertyAttributes __fastcall GetAttributes(void);
  626.     virtual System::AnsiString __fastcall GetValue(void);
  627.     virtual void __fastcall SetValue(const System::AnsiString Value);
  628. public:
  629.     /* TPropertyEditor.Destroy */ __fastcall virtual ~TDateTimeProperty(void) { }
  630.     
  631. public:
  632.     /* TObject.Create */ __fastcall TDateTimeProperty(void) : Dsgnintf::TPropertyEditor() { }
  633.     
  634. };
  635.  
  636. class DELPHICLASS EPropertyError;
  637. class PASCALIMPLEMENTATION EPropertyError : public Sysutils::Exception 
  638. {
  639.     typedef Sysutils::Exception inherited;
  640.     
  641. public:
  642.     /* Exception.Create */ __fastcall EPropertyError(const System::AnsiString Msg) : Sysutils::Exception(
  643.         Msg) { }
  644.     /* Exception.CreateFmt */ __fastcall EPropertyError(const System::AnsiString Msg, const System::TVarRec 
  645.         * Args, const int Args_Size) : Sysutils::Exception(Msg, Args, Args_Size) { }
  646.     /* Exception.CreateRes */ __fastcall EPropertyError(int Ident, Extended Dummy) : Sysutils::Exception(
  647.         Ident, Dummy) { }
  648.     /* Exception.CreateResFmt */ __fastcall EPropertyError(int Ident, const System::TVarRec * Args, const 
  649.         int Args_Size) : Sysutils::Exception(Ident, Args, Args_Size) { }
  650.     /* Exception.CreateHelp */ __fastcall EPropertyError(const System::AnsiString Msg, int AHelpContext
  651.         ) : Sysutils::Exception(Msg, AHelpContext) { }
  652.     /* Exception.CreateFmtHelp */ __fastcall EPropertyError(const System::AnsiString Msg, const System::TVarRec 
  653.         * Args, const int Args_Size, int AHelpContext) : Sysutils::Exception(Msg, Args, Args_Size, AHelpContext
  654.         ) { }
  655.     /* Exception.CreateResHelp */ __fastcall EPropertyError(int Ident, int AHelpContext) : Sysutils::Exception(
  656.         Ident, AHelpContext) { }
  657.     /* Exception.CreateResFmtHelp */ __fastcall EPropertyError(int Ident, const System::TVarRec * Args, 
  658.         const int Args_Size, int AHelpContext) : Sysutils::Exception(Ident, Args, Args_Size, AHelpContext)
  659.          { }
  660.     
  661. public:
  662.     /* TObject.Destroy */ __fastcall virtual ~EPropertyError(void) { }
  663.     
  664. };
  665.  
  666. class DELPHICLASS TComponentEditor;
  667. class PASCALIMPLEMENTATION TComponentEditor : public System::TObject 
  668. {
  669.     typedef System::TObject inherited;
  670.     
  671. private:
  672.     Classes::TComponent* FComponent;
  673.     TFormDesigner* FDesigner;
  674.     
  675. public:
  676.     __fastcall virtual TComponentEditor(Classes::TComponent* AComponent, TFormDesigner* ADesigner);
  677.     virtual void __fastcall Edit(void);
  678.     virtual void __fastcall ExecuteVerb(int Index);
  679.     virtual System::AnsiString __fastcall GetVerb(int Index);
  680.     virtual int __fastcall GetVerbCount(void);
  681.     virtual void __fastcall Copy(void);
  682.     __property Classes::TComponent* Component = {read=FComponent};
  683.     __property TFormDesigner* Designer = {read=FDesigner};
  684. public:
  685.     /* TObject.Destroy */ __fastcall virtual ~TComponentEditor(void) { }
  686.     
  687. };
  688.  
  689. typedef System::TMetaClass*TComponentEditorClass;
  690.  
  691. class DELPHICLASS TDefaultEditor;
  692. class PASCALIMPLEMENTATION TDefaultEditor : public Dsgnintf::TComponentEditor 
  693. {
  694.     typedef Dsgnintf::TComponentEditor inherited;
  695.     
  696. private:
  697.     TPropertyEditor* FFirst;
  698.     TPropertyEditor* FBest;
  699.     bool FContinue;
  700.     void __fastcall CheckEdit(TPropertyEditor* PropertyEditor);
  701.     
  702. protected:
  703.     virtual void __fastcall EditProperty(TPropertyEditor* PropertyEditor, bool &Continue, bool &FreeEditor
  704.         );
  705.     
  706. public:
  707.     virtual void __fastcall Edit(void);
  708. public:
  709.     /* TComponentEditor.Create */ __fastcall virtual TDefaultEditor(Classes::TComponent* AComponent, TFormDesigner* 
  710.         ADesigner) : Dsgnintf::TComponentEditor(AComponent, ADesigner) { }
  711.     
  712. public:
  713.     /* TObject.Destroy */ __fastcall virtual ~TDefaultEditor(void) { }
  714.     
  715. };
  716.  
  717. typedef void __fastcall (*TFreeCustomModulesProc)(int Group);
  718.  
  719. typedef System::TMetaClass* __fastcall (*TPropertyMapperFunc)(Classes::TPersistent* Obj, Typinfo::PPropInfo 
  720.     PropInfo);
  721.  
  722. enum TCustomModuleAttribute { cmaVirtualSize };
  723.  
  724. typedef Set<TCustomModuleAttribute, cmaVirtualSize, cmaVirtualSize>  TCustomModuleAttributes;
  725.  
  726. class DELPHICLASS TCustomModule;
  727. class PASCALIMPLEMENTATION TCustomModule : public System::TObject 
  728. {
  729.     typedef System::TObject inherited;
  730.     
  731. private:
  732.     Classes::TComponent* FRoot;
  733.     
  734. public:
  735.     __fastcall virtual TCustomModule(Classes::TComponent* ARoot);
  736.     virtual void __fastcall ExecuteVerb(int Index);
  737.     virtual TCustomModuleAttributes __fastcall GetAttributes(void);
  738.     virtual System::AnsiString __fastcall GetVerb(int Index);
  739.     virtual int __fastcall GetVerbCount(void);
  740.     virtual void __fastcall Saving(void);
  741.     virtual void __fastcall ValidateComponent(Classes::TComponent* Component);
  742.     __property Classes::TComponent* Root = {read=FRoot};
  743. public:
  744.     /* TObject.Destroy */ __fastcall virtual ~TCustomModule(void) { }
  745.     
  746. };
  747.  
  748. typedef System::TMetaClass*TCustomModuleClass;
  749.  
  750. typedef void __fastcall (*TRegisterCustomModuleProc)(int Group, System::TMetaClass* ComponentBaseClass
  751.     , System::TMetaClass* CustomModuleClass);
  752.  
  753. //-- var, const, procedure ---------------------------------------------------
  754. extern PACKAGE TFreeCustomModulesProc FreeCustomModulesProc;
  755. extern PACKAGE TRegisterCustomModuleProc RegisterCustomModuleProc;
  756. extern PACKAGE Byte MaxIdentLength;
  757. extern PACKAGE void __fastcall RegisterPropertyEditor(Typinfo::PTypeInfo PropertyType, System::TMetaClass* 
  758.     ComponentClass, const System::AnsiString PropertyName, System::TMetaClass* EditorClass);
  759. extern PACKAGE void __fastcall RegisterPropertyMapper(TPropertyMapperFunc Mapper);
  760. extern PACKAGE void __fastcall GetComponentProperties(TComponentList* Components, Typinfo::TTypeKinds 
  761.     Filter, TFormDesigner* Designer, TGetPropEditProc Proc);
  762. extern PACKAGE void __fastcall RegisterComponentEditor(System::TMetaClass* ComponentClass, System::TMetaClass* 
  763.     ComponentEditor);
  764. extern PACKAGE TComponentEditor* __fastcall GetComponentEditor(Classes::TComponent* Component, TFormDesigner* 
  765.     Designer);
  766. extern PACKAGE int __fastcall NewEditorGroup(void);
  767. extern PACKAGE void __fastcall FreeEditorGroup(int Group);
  768. extern PACKAGE void __fastcall RegisterCustomModule(System::TMetaClass* ComponentBaseClass, System::TMetaClass* 
  769.     CustomModuleClass);
  770.  
  771. }    /* namespace Dsgnintf */
  772. #if !defined(NO_IMPLICIT_NAMESPACE_USE)
  773. using namespace Dsgnintf;
  774. #endif
  775. //-- end unit ----------------------------------------------------------------
  776. #endif    // DsgnIntf
  777.